Repository navigation
Conversation
…mint#603) Closing the Preferences window always refreshed the updates list, even when nothing was modified, discarding the current selection and rebuilding the tree for no reason. Only refresh when the blacklisted packages actually changed.
Member
|
Blacklist changes are not the only thing that can affect updates. I'd prefer this be overly broad than explicitly narrow. |
rafaumeu
added a commit
to rafaumeu/mintupdate
that referenced
this pull request
Oct 30, 2026
Replace the unconditional refresh(False) after closing Preferences with a broad effective-dirty check, per maintainer feedback on linuxmint#1105 ('overly broad than explicitly narrow'). - PreferencesWindow marks its session dirty on any GSettings 'changed' signal during the window lifetime (handler connected at init and disconnected on destroy), and on a successful automatic-upgrade touchfile state transition. - No-op open/close (no effective mutation) no longer refreshes. - Restart precedence preserved: app_restart_required still restarts without a preliminary refresh. - Export blacklist and failed/reverted automation changes stay clean. Hermetic characterization harness: test_preferences_dirty_state.py. Closes rationale for linuxmint#603; supersedes closed PR linuxmint#1105 scope.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Closing the Preferences window always refreshed the updates list, even when nothing was modified. This discards the current selection and rebuilds the tree for no reason.
This PR only refreshes when the blacklisted packages were actually modified in the Blacklist tab. The restart-on-close path (when a preference requires it) keeps precedence and is unchanged.
Fixes #603
Notes
_save_blacklist()now compares the treeview contents against the current gsettings value and only writes (and flags the change) when they differ._on_preferences_destroyed()refreshes only when the blacklist actually changed.Partially assisted by an AI coding agent; the fix was reviewed and validated by the author (characterization harness: no-op close performs zero gsettings writes and no refresh; add/remove still refresh).